#pragma once

#include"Common.h"

class ProductionTask;
class UnitControlerBaseClass;

class UnitControlerManagerClass
{
public:
	void OnFrame();
	void OnUnitCreate(Unit* unit);
	void OnUnitMorph(Unit* unit);
	void Build(ProductionTask& buildTask);
	UnitControlerBaseClass* GetControler(Unit* unit);
private:
	UnitControlerBaseClass* CreateControler(Unit* unit);
	//--
	map<Unit* , UnitControlerBaseClass*> _unitControlers;
};

typedef Singleton<UnitControlerManagerClass> UnitControlerManager;